Increasingly enterprises and governments are turning to technology to automate and streamline their internal operations and business processes. Furthermore, the advent of the Internet and the World-Wide Web (WWW) has allowed enterprises and governments to delivery goods and services in an automated and nearly instantaneous fashion across the entire globe.
With any good or service provided by an enterprise or a government, there can be potentially a myriad of activities and expenses associated with those activities, which the enterprise or government endures before the good or service is available in the marketplace for consumption.
For example, word processing software has to be initially defined, developed and tested before it can be released for sale. These activities are usually managed internally by high-salaried project managers. For the most part, the project managers are administrators with skill in acquiring other personnel and equipment within an enterprise to make a project move from conception and development to release. In some cases, projects are so large within an enterprise that multiple layers of project managers are needed for any given project.
In large part, the industry has not been able to successfully automate and streamline the project management process. As a result, the cost of goods and services are likely unduly inflated and the time-to-market for goods and services is longer than it probably should be.
One reason for this lack of automation is the perceived complexity associated with project management in general. There are a variety of considerations such as laws, regulations, internal procedures that have to be followed. In addition, there may be limited personnel with specific skill sets some of which may be in high demand and unavailable within the enterprise and some of which the enterprise does not have and will have to contract out or hire in order to obtain.
Moreover, and perhaps the most insurmountable problem, is that there has to be an infrastructure of equipment and software systems to support product development for the project. In this case, an enterprise hires or maintains large support staffs to arrange, operate, and maintain the infrastructure. This staff may not even be related in any manner to the product being developed but this staff is indispensable to the success of the project. Additionally, the various software systems and computers used for the infrastructure have to be compatible and in many cases duplicated for different phases of the project (e.g. development versus quality assurance, etc.). This separation of environments within the infrastructure is crucial to the overall process and in some cases may be mandated. However, it also creates a lot of excess capacity and duplication between the phases in terms of equipment, software systems, and support staff.
Another issue that has to be addressed with multiple project environments entails security access. That is, responsibilities for different parts of a project's environment are often split between different personnel or groups within an enterprise. So, the development environment is often owned by engineering, the testing environment by testers, and the staging and production by operations. Thus, in addition to administration and maintenance, security procedures and policies often have to be enforced within each particular portion of a project's infrastructure.
Furthermore, each environment typically has its own security mechanism, such that a project's integrity can be altered by personnel having proper security within a particular environment and even when policy of the overall project would prohibit such a scenario. Thus, security tends to be enforced based on the project's environment and not based on particular points associated with a project's lifecycle.
Thus, what is needed is a mechanism, which allows for improved and automated project lifecycle stage-based access control.